﻿#if NET45
namespace Longbow.Logging
{
    /// <summary>
    /// 
    /// </summary>
    public interface ILogger
    {       
        /// <summary>
        /// 
        /// </summary>
        /// <param name="logLevel"></param>
        /// <returns></returns>
        bool IsEnabled(LogLevel logLevel);
        
        /// <summary>
        /// 
        /// </summary>
        /// <param name="logLevel"></param>
        /// <param name="message"></param>
        void Log(LogLevel logLevel, string message);
    }

    /// <summary>
    /// 
    /// </summary>
    public enum LogLevel
    {
        /// <summary>
        /// 
        /// </summary>
        Trace = 0,
        
        /// <summary>
        /// 
        /// </summary>
        Debug = 1,
        
        /// <summary>
        /// 
        /// </summary>
        Information = 2,
        
        /// <summary>
        /// 
        /// </summary>
        Warning = 3,
        
        /// <summary>
        /// 
        /// </summary>
        Error = 4,
        
        /// <summary>
        /// 
        /// </summary>
        Critical = 5,
        
        /// <summary>
        /// 
        /// </summary>
        None = 6
    }
}
#endif
